#!/bin/bash

echo "The first parameter is: $1"

cd /andy/admin

# 镜像名称
IMAGE_NAME="blog:1.2"

# 使用docker ps结合--filter选项来查找正在运行的、基于特定镜像的容器，并提取镜像ID
IMAGE_ID=$(docker ps --quiet --filter "ancestor=$IMAGE_NAME")

if [ -z "$IMAGE_ID" ]; then
    echo "没有正在运行的容器使用镜像 '$IMAGE_NAME'。"
    exit 1
else
    echo "镜像 '$IMAGE_NAME' 正在被以下容器使用："
    echo "$IMAGE_ID"
fi


echo "停止并删除容器 $IMAGE_ID start"
docker stop $IMAGE_ID
echo "删除容器 $IMAGE_ID finish"

echo "删除运行镜像 $IMAGE_ID start "
docker rm -f $IMAGE_ID
echo "删除运行镜像 $IMAGE_ID finish"


# 使用docker images命令，配合grep和awk提取镜像ID
IMAGES_ID=$(docker images --quiet "$IMAGE_NAME")

if [ -z "$IMAGES_ID" ]; then
    echo "镜像 '$IMAGE_NAME' 未找到。"
    exit 1
else
    echo "镜像 '$IMAGE_NAME' 的ID为: $IMAGES_ID"
fi

# 接下来可以使用$IMAGE_ID进行进一步操作，比如删除或运行该镜像
# 例如:
echo "删除镜像 $IMAGES_ID start"
 docker rmi $IMAGES_ID
echo "删除镜像 $IMAGES_ID finish"

echo "构建镜像 $IMAGE_NAME start"
docker build -t blog:1.2 .
echo "构建镜像 $IMAGE_NAME finish"

echo "启动容器 $IMAGE_NAME start"
docker run -d --restart always --name blog -p 8085:8085 blog:1.2
echo '启动容器 $IMAGE_NAME finish'
